<template>
  <div>
    <h2>Abc组件</h2>
    <input type="text" v-if="flag" @blur="flag = false" ref="ipt">
    <button v-else @click="showIpt">按钮</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      flag: true
    }
  },
  methods: {
    showIpt () {
      this.flag = true
      // Vue 的数据驱动视图，是说数据变化了，页面会自动更新，但是不会立即更新
      // Vue 官方的解释是：会在下次循环的时候更新页面
      // 如果希望马上获取到页面元素，可以将代码写到 this.$nextTicjk 中
      this.$nextTick(() => {
        this.$refs.ipt.focus() //让输入框获取焦点
      })
      
    }
  }
}
</script>

<style>

</style>